package OOM;

/**
 * -Xms200m -Xmx200m -XX:+PrintGCDetails -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/home/logs/heapdump.hprof
 */
public class MemoryOverflow {
    public static void main(String[] args) {
        try {
            int count=0;
            // 进行无限循环，不断创建新的对象
            while (true) {
                // 创建一个大数组，以加快内存耗尽的过程
                byte[] buffer = new byte[1024 * 1024]; // 1M大小的数组
                try {
                    Thread.sleep(2000);
                    System.out.println("输出"+count++);
                } catch (InterruptedException e) {

                }
            }
        } catch (OutOfMemoryError e) {
            // 捕获并打印内存溢出错误
            System.out.println("内存溢出了！");
            e.printStackTrace();
        }
    }
}